Volume Based Sampling [BackQuant]Volume Based Sampling
What this does
This indicator converts the usual time-based stream of candles into an event-based stream of “synthetic” bars that are created only when enough trading activity has occurred . You choose the activity definition:
Volume bars : create a new synthetic bar whenever the cumulative number of shares/contracts traded reaches a threshold.
Dollar bars : create a new synthetic bar whenever the cumulative traded dollar value (price × volume) reaches a threshold.
The script then keeps an internal ledger of these synthetic opens, highs, lows, closes, and volumes, and can display them as candles, plot a moving average calculated over the synthetic closes, mark each time a new sample is formed, and optionally overlay the native time-bars for comparison.
Why event-based sampling matters
Markets do not release information on a clock: activity clusters during news, opens/closes, and liquidity shocks. Event-based bars normalize for that heteroskedastic arrival of information: during active periods you get more bars (finer resolution); during quiet periods you get fewer bars (coarser resolution). Research shows this can reduce microstructure pathologies and produce series that are closer to i.i.d. and more suitable for statistical modeling and ML. In particular:
Volume and dollar bars are a common event-time alternative to time bars in quantitative research and are discussed extensively in Advances in Financial Machine Learning (AFML). These bars aim to homogenize information flow by sampling on traded size or value rather than elapsed seconds.
The Volume Clock perspective models market activity in “volume time,” showing that many intraday phenomena (volatility, liquidity shocks) are better explained when time is measured by traded volume instead of seconds.
Related market microstructure work on flow toxicity and liquidity highlights that the risk dealers face is tied to information intensity of order flow, again arguing for activity-based clocks.
How the indicator works (plain English)
Choose your bucket type
Volume : accumulate volume until it meets a threshold.
Dollar Bars : accumulate close × volume until it meets a dollar threshold.
Pick the threshold rule
Dynamic threshold : by default, the script computes a rolling statistic (mean or median) of recent activity to set the next bucket size. This adapts bar size to changing conditions (e.g., busier sessions produce more frequent synthetic bars).
Fixed threshold : optionally override with a constant target (e.g., exactly 100,000 contracts per synthetic bar, or $5,000,000 per dollar bar).
Build the synthetic bar
While a bucket fills, the script tracks:
o_s: first price of the bucket (synthetic open)
h_s: running maximum price (synthetic high)
l_s: running minimum price (synthetic low)
c_s: last price seen (synthetic close)
v_s: cumulative native volume inside the bucket
d_samples: number of native bars consumed to complete the bucket (a proxy for “how fast” the threshold filled)
Emit a new sample
Once the bucket meets/exceeds the threshold, a new synthetic bar is finalized and stored. If overflow occurs (e.g., a single native bar pushes you past the threshold by a lot), the code will emit multiple synthetic samples to account for the extra activity.
Maintain a rolling history efficiently
A ring buffer can overwrite the oldest samples when you hit your Max Stored Samples cap, keeping memory usage stable.
Compute synthetic-space statistics
The script computes an SMA over the last N synthetic closes and basic descriptors like average bars per synthetic sample, mean and standard deviation of synthetic returns, and more. These are all in event time , not clock time.
Inputs and options you will actually use
Data Settings
Sampling Method : Volume or Dollar Bars.
Rolling Lookback : window used to estimate the dynamic threshold from recent activity.
Filter : Mean or Median for the dynamic threshold. Median is more robust to spikes.
Use Fixed? / Fixed Threshold : override dynamic sizing with a constant target.
Max Stored Samples : cap on synthetic history to keep performance snappy.
Use Ring Buffer : turn on to recycle storage when at capacity.
Indicator Settings
SMA over last N samples : moving average in synthetic space . Because its index is sample count, not minutes, it adapts naturally: more updates in busy regimes, fewer in quiet regimes.
Visuals
Show Synthetic Bars : plot the synthetic OHLC candles.
Candle Color Mode :
Green/Red: directional close vs open
Volume Intensity: opacity scales with synthetic size
Neutral: single color
Adaptive: graded by how large the bucket was relative to threshold
Mark new samples : drop a small marker whenever a new synthetic bar prints.
Comparison & Research
Show Time Bars : overlay the native time-based candles to visually compare how the two sampling schemes differ.
How to read it, step by step
Turn on “Synthetic Bars” and optionally overlay “Time Bars.” You will see that during high-activity bursts, synthetic bars print much faster than time bars.
Watch the synthetic SMA . Crosses in synthetic space can be more meaningful because each update represents a roughly comparable amount of traded information.
Use the “Avg Bars per Sample” in the info table as a regime signal. Falling average bars per sample means activity is clustering, often coincident with higher realized volatility.
Try Dollar Bars when price varies a lot but share count does not; they normalize by dollar risk taken in each sample. Volume Bars are ideal when share count is a better proxy for information flow in your instrument.
Quant finance background and citations
Event time vs. clock time : Easley, López de Prado, and O’Hara advocate measuring intraday phenomena on a volume clock to better align sampling with information arrival. This framing helps explain volatility bursts and liquidity droughts and motivates volume-based bars.
Flow toxicity and dealer risk : The same authors show how adverse selection risk changes with the intensity and informativeness of order flow, further supporting activity-based clocks for modeling and risk management.
AFML framework : In Advances in Financial Machine Learning , event-driven bars such as volume, dollar, and imbalance bars are presented as superior sampling units for many ML tasks, yielding more stationary features and fewer microstructure distortions than fixed time bars. ( Alpaca )
Practical use cases
1) Regime-aware moving averages
The synthetic SMA in event time is not fooled by quiet periods: if nothing of consequence trades, it barely updates. This can make trend filters less sensitive to calendar drift and more sensitive to true participation.
2) Breakout logic on “equal-information” samples
The script exposes simple alerts such as breakout above/below the synthetic SMA . Because each bar approximates a constant amount of activity, breakouts are conditioned on comparable informational mass, not arbitrary time buckets.
3) Volatility-adaptive backtests
If you use synthetic bars as your base data stream, most signal rules become self-paced : entry and exit opportunities accelerate in fast markets and slow down in quiet regimes, which often improves the realism of slippage and fill modeling in research pipelines (pair this indicator with strategy code downstream).
4) Regime diagnostics
Avg Bars per Sample trending down: activity is dense; expect larger realized ranges.
Return StdDev (synthetic) rising: noise or trend acceleration in event time; re-tune risk.
Interpreting the info panel
Method : your sampling choice and current threshold.
Total Samples : how many synthetic bars have been formed.
Current Vol/Dollar : how much of the next bucket is already filled.
Bars in Bucket : native bars consumed so far in the current bucket.
Avg Bars/Sample : lower means higher trading intensity.
Avg Return / Return StdDev : return stats computed over synthetic closes .
Research directions you can build from here
Imbalance and run bars
Extend beyond pure volume or dollar thresholds to imbalance bars that trigger on directional order flow imbalance (e.g., buy volume minus sell volume), as discussed in the AFML ecosystem. These often further homogenize distributional properties used in ML. alpaca.markets
Volume-time indicators
Re-compute classical indicators (RSI, MACD, Bollinger) on the synthetic stream. The premise is that signals are updated by traded information , not seconds, which may stabilize indicator behavior in heteroskedastic regimes.
Liquidity and toxicity overlays
Combine synthetic bars with proxies of flow toxicity to anticipate spread widening or volatility clustering. For instance, tag synthetic bars that surpass multiples of the threshold and test whether subsequent realized volatility is elevated.
Dollar-risk parity sampling for portfolios
Use dollar bars to align samples across assets by notional risk, enabling cleaner cross-asset features and comparability in multi-asset models (e.g., correlation studies, regime clustering). AFML discusses the benefits of event-driven sampling for cross-sectional ML feature engineering.
Microstructure feature set
Compute duration in native bars per synthetic sample , range per sample , and volume multiple of threshold as inputs to state classifiers or regime HMMs . These features are inherently activity-aware and often predictive of short-horizon volatility and trend persistence per the event-time literature. ( Alpaca )
Tips for clean usage
Start with dynamic thresholds using Median over a sensible lookback to avoid outlier distortion, then move to Fixed thresholds when you know your instrument’s typical activity scale.
Compare time bars vs synthetic bars side by side to develop intuition for how your market “breathes” in activity time.
Keep Max Stored Samples reasonable for performance; the ring buffer avoids memory creep while preserving a rolling window of research-grade data.
[i]price
Current Price (Customizable) by DRtradeCurrent Price Line & Dynamic Label (Fully Customizable)
The ultimate tool for clear, real-time price visualization.
This powerful, lightweight indicator draws a clean horizontal line at the current market price, updating instantly with every price tick. Unlike other current price line scripts, this tool ensures you always see where the price is right now and provides full control over every visual element.
Key Features:
- Real-Time Tracking: The line moves dynamically with price ticks within the current candle, eliminating lag and providing true current market price awareness.
- Line Extension Control: Choose to extend: Left, Right, or Both. Helpful for scalpers and options traders
- Visual Customizations: Color, Style, Size, Width, etc.
- Label Positioning: Left of Candle, Above Candle, or Right of Candle
All customization options are available in the indicator's settings menu.
Ping me with feature reqeusts.
VWAP Daily/Weekly/Monthly - Automatic AnchoredExplanation:
This script plots Volume-Weighted Average Price (VWAP) lines that are automatically anchored to the beginning of key timeframes — daily, weekly, and monthly. VWAP is a widely used trading indicator that shows the average price of an asset weighted by trading volume, making it useful for identifying fair value and institutional trading levels.
The “automatic anchored” feature means that you don’t have to manually select starting points. Instead, the script automatically resets the VWAP at the start of each day, week, or month, depending on the chosen setting. This ensures the VWAP always reflects the true average price for that period, providing traders with a consistent reference for support, resistance, and trend direction across multiple timeframes.
Notice:
On the chart, you may notice visible “jumps” in the VWAP lines. These are intentional. Each jump marks the reset point at the start of a new day, week, or month, depending on the selected setting. This design keeps the VWAP history from the previous period intact, allowing you to clearly see how price interacted with VWAP in past sessions.
By keeping these historical resets, you can easily compare short-term (daily) VWAP behavior against longer-term levels like weekly and monthly VWAP. This provides valuable context, helping you spot when price respects or diverges from fair value across different timeframes.
In short:
Daily VWAP resets at the start of each trading day.
Weekly VWAP resets at the beginning of each trading week.
Monthly VWAP resets at the start of each month.
This makes it easy to analyze how price interacts with VWAP levels across different time horizons without manual adjustments.
Volume Percentile Supertrend [BackQuant]Volume Percentile Supertrend
A volatility and participation aware Supertrend that automatically widens or tightens its bands based on where current volume sits inside its recent distribution. The goal is simple: fewer whipsaws when activity surges, faster reaction when the tape is quiet.
What it does
Calculates a standard Supertrend framework from an ATR on a volume weighted price source.
Measures current volume against its recent percentile and converts that context into a dynamic ATR multiplier.
Widens bands when volume is unusually high to reduce chop. Tightens bands when volume is unusually low to catch turns earlier.
Paints candles, draws the active Supertrend line and optional bands, and prints clear Long and Short signal markers.
Why volume percentile
Fixed ATR multipliers assume all bars are equal. They are not. When participation spikes, price swings expand and a static band gets sliced.
Percentiles place the current bar inside a recent distribution. If volume is in the top slice, the Supertrend allows more room. If volume is in the bottom slice, it expects smaller noise and tightens.
This keeps the same playbook usable across busy sessions and sleepy ones without constant manual retuning.
How it works
Volume distribution - A rolling window computes the Pth percentile of volume. Above that is flagged as high volume. A lower reference percentile marks quiet bars.
Dynamic multiplier - Start from a Base Multiplier. If bar is high volume, scale it up by a function of volume-to-average and a Sensitivity knob. If bar is low volume, scale it down. Smooth the result with an EMA to avoid jitter.
VWMA source - The price input for bands is a short volume weighted moving average of close. Heavy prints matter more.
ATR envelope - Compute ATR on your length. UpperBasic = VWMA + Multiplier x ATR. LowerBasic = VWMA - Multiplier x ATR.
Trailing logic - The final lines trail price so they only move in a direction that preserves Supertrend behavior. This prevents sudden flips from transient pokes.
Direction and signals - Direction flips when price crosses through the relevant trailing line. SupertrendLong and SupertrendShort mark those flips. The plotted Supertrend is the active trailing side.
Inputs and what they change
Volume Lookback - Window for percentile and average. Larger window = stabler percentile, smaller = snappier.
Volume Percentile Level - Threshold that defines high volume. Example 70 means top 30 percent of recent bars are treated as high activity.
Volume Sensitivity - Gain from volume ratio to the dynamic multiplier. Higher = bands expand more when volume spikes.
VWMA Source Length - Smoothing of the volume weighted price source for the bands.
ATR Length - Standard ATR window. Larger = slower, smaller = quicker.
Base Multiplier - Core band width before volume adjustment. Think of this as your neutral volatility setting.
Multiplier Smoothing - EMA on the dynamic multiplier. Reduces back and forth changes when volume oscillates around the threshold.
Show Supertrend on chart - Toggles the active line.
Show Upper Lower Bands - Draws both sides even when inactive. Good for context.
Paint candles according to Trend - Colors bars by trend direction.
Show Long and Short Signals - Prints 𝕃 and 𝕊 markers at flips.
Colors - Choose your long and short palette.
Reading the plot
Supertrend line - Thick line that hugs price from above in downtrends and from below in uptrends. Its distance breathes with volume.
Bands - Optional upper and lower rails. Useful to see the inactive side and judge how wide the envelope is right now.
Signals - 𝕃 prints when the trend flips long. 𝕊 prints when the trend flips short.
Candle colors - Quick bias read at a glance when painting is enabled.
Typical workflows
Trend following - Use 𝕃 flips to initiate longs and ride while bars remain colored long and price respects the lower trailing line. Mirror for shorts with 𝕊 and the upper trailing line. During high volume phases the line will give more room, which helps stay in the move.
Pullback adds - In an established trend, shallow tags toward the active line after a high volume expansion can be add points. The dynamic envelope adjusts to the session so your add distance is not fixed to a stale volatility regime.
Mean reversion filter - In quiet tape the multiplier contracts and flips come earlier. If you prefer fading, watch for quick toggles around the bands when volume percentile remains low. In high volume, avoid fading into the widened line unless you have other strong reasons.
Notes on behavior
High volume bar: the percentile gate opens, volRatio > 1 powers up the multiplier through the Sensitivity lever, bands widen, fewer false flips.
Low volume bar: multiplier contracts, bands tighten, flips can happen earlier which is useful when you want to catch regime changes in quiet conditions.
Smoothing matters: both the price source (VWMA) and the multiplier are smoothed to keep structure readable while still adapting.
Quick checklist
If you see frequent chop and today feels busy: check that volume is above your percentile. Wider bands are expected. Consider letting the trend prove itself against the expanded line before acting.
If everything feels slow and you want earlier entries: percentile likely marks low volume, so bands tighten and 𝕃 or 𝕊 can appear sooner.
If you want more or fewer flips overall: adjust Base Multiplier first. If you want more reaction specifically tied to volume surges: raise Volume Sensitivity. If the envelope breathes too fast: raise Multiplier Smoothing.
What the signals mean
SupertrendLong - Direction changed from non-long to long. 𝕃 marker prints. The active line switches to support below price.
SupertrendShort - Direction changed from non-short to short. 𝕊 marker prints. The active line switches to resistance above price.
Trend color - Bars painted long or short help validate context for entries and management.
Summary
Volume Percentile Supertrend adapts the classic Supertrend to the day you are trading. Volume percentile sets the mood, sensitivity translates it into dynamic band width, and smoothing keeps it clean. The result is a single plot that aims to stay conservative when the tape is loud and act decisively when it is quiet, without you having to constantly retune settings.
Quarterly EarningsThis Pine script shows quarterly EPS, Sales, and P/E (TTM-based) in a styled table.
J. YOUNG INDICATOR (2)QUICK REFERENCE to help with a PRICE FOR OPTIONS and or B/H entry MEDIAN PRICE of the MONTHLY/QUARTERLY aVWAPS to get a more accurate price point
Pairs Trading Scanner [BackQuant]Pairs Trading Scanner
What it is
This scanner analyzes the relationship between your chart symbol and a chosen pair symbol in real time. It builds a normalized “spread” between them, tracks how tightly they move together (correlation), converts the spread into a Z-Score (how far from typical it is), and then prints clear LONG / SHORT / EXIT prompts plus an at-a-glance dashboard with the numbers that matter.
Why pairs at all?
Markets co-move. When two assets are statistically related, their relationship (the spread) tends to oscillate around a mean.
Pairs trading doesn’t require calling overall market direction you trade the relative mispricing between two instruments.
This scanner gives you a robust, visual way to find those dislocations, size their significance, and structure the trade.
How it works (plain English)
Step 1 Pick a partner: Select the Pair Symbol to compare against your chart symbol. The tool fetches synchronized prices for both.
Step 2 Build a spread: Choose a Spread Method that defines “relative value” (e.g., Log Spread, Price Ratio, Return Difference, Price Difference). Each lens highlights a different flavor of divergence.
Step 3 Validate relationship: A rolling Correlation checks if the pair is moving together enough to be tradable. If correlation is weak, the scanner stands down.
Step 4 Standardize & score: The spread is normalized (mean & variability over a lookback) to form a Z-Score . Large absolute Z means “stretched,” small means “near fair.”
Step 5 Signals: When the Z-Score crosses user-defined thresholds with sufficient correlation , entries print:
LONG = long chart symbol / short pair symbol,
SHORT = short chart symbol / long pair symbol,
EXIT = mean reversion into the exit zone or correlation failure.
Core concepts (the three pillars)
Spread Method Your definition of “distance” between the two series.
Guidance:
Log Spread: Focuses on proportional differences; robust when prices live on different scales.
Price Ratio: Classic relative value; good when you care about “X per Y.”
Return Difference: Emphasizes recent performance gaps; nimble for momentum-to-mean plays.
Price Difference: Straight subtraction; intuitive for similar-scale assets (e.g., two ETFs).
Correlation A rolling score of co-movement. The scanner requires it to be above your Min Correlation before acting, so you’re not trading random divergence.
Z-Score “How abnormal is today’s spread?” Positive = chart richer than pair; negative = cheaper. Thresholds define entries/exits with transparent, statistical context.
What you’ll see on the chart
Correlation plot (blue line) with a dashed Min Correlation guide. Above the line = green zone for signals; below = hands off.
Z-Score plot (white line) with colored, dashed Entry bands and dotted Exit bands. Zero line for mean.
Normalized spread (yellow) for a quick “shape read” of recent divergence swings.
Signal markers :
LONG (green label) when Z < –Entry and corr OK,
SHORT (red label) when Z > +Entry and corr OK,
EXIT (gray label) when Z returns inside the Exit band or correlation drops below the floor.
Background tint for active state (faint green for long-spread stance, faint red for short-spread stance).
The two built-in dashboards
Statistics Table (top-right)
Pair Symbol Your chosen partner.
Correlation Live value vs. your minimum.
Z-Score How stretched the spread is now.
Current / Pair Prices Real-time anchors.
Signal State NEUTRAL / LONG / SHORT.
Price Ratio Context for ratio-style setups.
Analysis Table (bottom-right)
Avg Correlation Typical co-movement level over your window.
Max |Z| The recent extremes of dislocation.
Spread Volatility How “lively” the spread has been.
Trade Signal A human-readable prompt (e.g., “LONG A / SHORT B” or “NO TRADE” / “LOW CORRELATION”).
Risk Level LOW / MEDIUM / HIGH based on current stretch (absolute Z).
Signals logic (plain English)
Entry (LONG): The spread is unusually negative (chart cheaper vs pair) and correlation is healthy. Expect mean reversion upward in the spread: long chart, short pair.
Entry (SHORT): The spread is unusually positive (chart richer vs pair) and correlation is healthy. Expect mean reversion downward in the spread: short chart, long pair.
Exit: The spread relaxes back toward normal (inside your exit band), or correlation deteriorates (relationship no longer trusted).
A quick, repeatable workflow
1) Choose your pair in context (same sector/theme or known macro link). Think: “Do these two plausibly co-move?”
2) Pick a spread lens that matches your narrative (ratio for relative value, returns for short-term performance gaps, etc.).
3) Confirm correlation is above your floor no corr, no trade.
4) Wait for a stretch (Z beyond Entry band) and a printed LONG / SHORT .
5) Manage to the mean (EXIT band) or correlation failure; let the scanners’ state/labels keep you honest.
Settings that matter (and why)
Spread Method Defines the “mispricing” you care about.
Correlation Period Longer = steadier regime read, shorter = snappier to regime change.
Z-Score Period The window that defines “normal” for the spread; it sets the yardstick.
Use Percentage Returns Normalizes series when using return-based logic; keep on for mixed-scale assets.
Entry / Exit Thresholds Set your stretch and your target reversion zone. Wider entries = rarer but stronger signals.
Minimum Correlation The gatekeeper. Raising it favors quality over quantity.
Choosing pairs (practical cheat sheet)
Same family: two index ETFs, two oil-linked names, two gold miners, two L1 tokens.
Hedge & proxy: stock vs. sector ETF, BTC vs. BTC index, WTI vs. energy ETF.
Cross-venue or cross-listing: instruments that are functionally the same exposure but price differently intraday.
Reading the cues like a pro
Divergence shape: The yellow normalized spread helps you see rhythm fast spike and snap-back versus slow grind.
Corr-first discipline: Don’t fight the “Min Correlation” line. Good pairs trading starts with a relationship you can trust.
Exit humility: When Z re-centers, let the EXIT do its job. The edge is the journey to the mean, not overstaying it.
Frequently asked (quick answers)
“Long/Short means what exactly?”
LONG = long the chart symbol and short the pair symbol.
SHORT = short the chart symbol and long the pair symbol.
“Do I need same price scales?” No. The spread methods normalize in different ways; choose the one that fits your use case (log/ratio are great for mixed scales).
“What if correlation falls mid-trade?” The scanner will neutralize the state and print EXIT . Relationship first; trade second.
Field notes & patterns
Snap-back days: After a one-sided session, return-difference spreads often flag cleaner intraday mean reversions.
Macro rotations: Ratio spreads shine during sector re-weights (e.g., value vs. growth ETFs); look for steady corr + elevated |Z|.
Event bleed-through: If one symbol reacts to news and its partner lags, Z often flags a high-quality, short-horizon re-centering.
Display controls at a glance
Show Statistics Table Live state & key numbers, top-right.
Show Analysis Table Context/risk read, bottom-right.
Show Correlation / Spread / Z-Score Toggle the sub-charts you want visible.
Show Entry/Exit Signals Turn markers on/off as needed.
Coloring Adjust Long/Short/Neutral and correlation line colors to match your theme.
Alerts (ready to route to your workflow)
Pairs Long Entry Z falls through the long threshold with correlation above minimum.
Pairs Short Entry Z rises through the short threshold with correlation above minimum.
Pairs Trade Exit Z returns to neutral or the relationship fails your correlation floor.
Correlation Breakdown Rolling correlation crosses your minimum; relationship caution.
Final notes
The scanner is designed to keep you systematic: require relationship (correlation), quantify dislocation (Z-Score), act when stretched, stand down when it normalizes or the relationship degrades. It’s a full, visual loop for relative-value trading that stays out of your way when it should and gets loud only when the numbers line up.
Price Level Highlighter [ldlwtrades]This indicator is a minimalist and highly effective tool designed for traders who incorporate institutional concepts into their analysis. It automates the identification of key psychological price levels and adds a unique, dynamic layer of information to help you focus on the most relevant area of the market. Inspired by core principles of market structure and liquidity, it serves as a powerful visual guide for anticipating potential support and resistance.
The core idea is simple: specific price points, particularly those ending in round numbers or common increments, often act as magnets or barriers for price. While many indicators simply plot static lines, this tool goes further by intelligently highlighting the single most significant level in real-time. This dynamic feature allows you to quickly pinpoint where the market is currently engaged, offering a clear reference point for your trading decisions. It reduces chart clutter and enhances your focus on the immediate price action.
Features
Customizable Price Range: Easily define a specific Start Price and End Price to focus the indicator on the most relevant area of your chart, preventing unnecessary clutter.
Adjustable Increment: Change the interval of the lines to suit your trading style, from high-frequency increments (e.g., 10 points) for scalping to wider intervals (e.g., 50 or 100 points) for swing trading.
Intelligent Highlighting: A key feature that automatically identifies and highlights the single horizontal line closest to the current market price with a distinct color and thickness. This gives you an immediate visual cue for the most relevant price level.
Highly Customizabile: Adjust the line color, style, and width for both the main lines and the highlighted line to fit your personal chart aesthetic.
Usage
Apply the indicator to your chart.
In the settings, input your desired price range (Start Price and End Price) to match the market you are trading.
Set the Price Increment to your preferred density.
Monitor the chart for the highlighted line. This is your active price level and a key area of interest.
Combine this tool with other confirmation signals (e.g., order blocks, fair value gaps, liquidity pools) to build higher-probability trade setups.
Best Practices
Pairing: This tool is effective across all markets, including stocks, forex, indices, and crypto. It is particularly useful for volatile markets where price moves rapidly between psychological levels.
Mindful Analysis: Use the highlighted level as a reference point for your analysis, not as a standalone signal. A break above or below this level can signify a shift in market control.
Backtesting: Always backtest the indicator on your preferred market and timeframe to understand how it performs under different conditions.
Trend Compass (Manual)## Trend Compass (Manual) - A Discretionary Trader's Dashboard
### Summary
Trend Compass is a simple yet powerful dashboard designed for discretionary traders who want a constant, visual reminder of their market analysis directly on their chart. Instead of relying on automated indicators, this tool gives you **full manual control** to define the market state across different timeframes or conditions.
It helps you stay aligned with your higher-level analysis (e.g., HTF bias, current market structure) and avoid making impulsive decisions that go against your plan.
### Key Features
- **Fully Manual Control:** You decide the trend. No lagging indicators, no confusing signals. Just your own analysis, displayed clearly.
- **Multiple Market States:** Define each row as an `Uptrend`, `Downtrend`, `Pullback`, or `Neutral` market.
- **Customizable Rows:** Display up to 8 rows. You can label each one however you like (e.g., "D1", "H4", "Market Structure", "Liquidity Bias").
- **Flexible Panel:** Change all colors, text sizes, and place the panel in any of the 9 positions on your chart.
- **Clean & Minimalist:** Designed to provide essential information at a glance without cluttering your chart.
### How to Use
1. **Add to Chart:** Add the indicator to your chart.
2. **Open Settings:** Go into the indicator settings.
3. **Configure Rows:**
- In the "Rows (Manual Control)" section, set the "Number of rows" you want to display.
- For each row, give it a custom **Label** (e.g., "m15").
- Select its current state from the dropdown menu (`Uptrend`, `Downtrend`, etc.).
- To remove a row, simply set its state to `Hidden`.
4. **Customize Style:**
- In the "Panel & Visual Style" section, adjust colors, text sizes, and the panel's position to match your chart's theme.
This tool is perfect for price action traders, ICT/SMC traders, or anyone who values a clean chart and a disciplined approach to their analysis.
Dynamic Stop Loss Optimizer [BackQuant]Dynamic Stop Loss Optimizer
Overview
Stop placement decides expectancy. This tool gives you three professional-grade, adaptive stop engines, ATR, Volatility, and Hybrid. So your exits scale with current conditions instead of guessing fixed ticks. It trails intelligently, redraws as the market evolves, and annotates the chart with clean labels/lines and a compact stats table. Pick the engine that fits the trade, or switch on the fly.
What it does
Calculates three adaptive stops in real time (ATR-based, Volatility-based, and Hybrid) and keeps them trailed as price makes progress.
Shows exactly where your risk lives with on-chart levels, color-coded markers (long/short), and precise “Risk %” labels at the current bar.
Surfaces context you actually use - current ATR, daily volatility, selected method, and the live stop level—in a tidy, movable table.
Fires alerts on stop hits so you can automate exits or journal outcomes without staring at the screen.
Why it matters
Adaptive risk control: Stops expand in fast tape and tighten in quiet tape. You’re not punished for volatility; you’re aligned with it.
Consistency across assets: The same playbook works whether you’re trading indexes, FX, crypto, or equities, because the engine normalizes to each symbol’s behavior.
Cleaner decision-making: One chart shows your entry idea and its invalidation in the same breath. If price trespasses, you know it instantly.
The three methods (choose your engine)
1) ATR Based “Structure-aware” distance
This classic approach keys off Average True Range to set a stop just beyond typical bar-to-bar excursion. It adapts smoothly to changing ranges and respects swing structure.
Use when: you want a steady, intuitive buffer that tracks trend legs without hugging price.
See it in action:
2) Volatility Based “Behavior-aware” distance
This engine derives stop distance from current return volatility (annualized, then scaled back down to the session). It reacts to regime shifts quickly and normalizes risk across symbols with very different prices.
Use when: you want the stop to breathe with realized volatility and respond faster to heat-ups/cool-downs.
See it in action:
3) Hybrid “Best of both worlds”
The Hybrid blends the ATR and Volatility distances into one consensus level, then trails it intelligently. You get the structural common sense of ATR and the regime sensitivity of Vol.
Use when: you want robust, all-weather behavior without micromanaging inputs.
See it in action:
How it trails
Longs: The stop ratchets up with favorable movement and holds its ground on shallow pullbacks. If price closes back into the risk zone, the level refreshes to the newest valid distance.
Shorts: Mirror logic ratchets down with trend, resists noise, and refreshes if price reclaims the zone.
Hybrid trailing: Uses the blended distance and the same “no give-backs” principle to keep gains protected as structure builds.
Reading the chart
Markers: Circles = ATR stops, Crosses = Vol stops, Diamonds = Hybrid. Colors indicate long (red level under price) vs short (green level above price).
Lines: The latest active stop is extended with a dashed line so you can see it at a glance.
Labels: “Long SL / Short SL” shows the exact price and current risk % from the last close no math required.
Table: ATR value, Daily Vol %, your chosen Method, the Current SL, and Risk %—all in one compact block that you can pin top-left/right/center.
Quick workflow
Define the idea: Long or Short, and which engine fits the tape (ATR, Vol, or Hybrid).
Place and trail: Let the optimizer print the level; trail automatically as the move develops.
Manage outcomes: If the line is tagged, you’re out clean. If it holds, you’ve contained heat while giving the trade room to work.
Inputs you’ll actually touch
Calculation Settings
ATR Length / Multiplier: Controls the “structural” cushion.
Volatility Length / Multiplier: Controls the “behavioral” cushion.
Trading Days: 252 or 365 to keep the volatility math aligned with the asset’s trading calendar.
Stop Loss Method
ATR Based | Volatility Based | Hybrid : Switch engines instantly to fit the trade.
Position Type
Long | Short | Both : Show only what you need for the current strategy.
Visual Settings
Show ATR / Vol / Hybrid Stops: Toggle families on/off.
Show Labels: Print price + Risk % at the live stop.
Table Position: Park the metrics where you like.
Coloring
Long/Short/Hybrid colors: Set a palette that matches your theme and stands out on your background.
Practical patterns to watch
Trend-pullback continuation: The stop ratchets behind higher lows (long) or lower highs (short). If price tests the level and rejects, that’s your risk-defined continuation cue.
Break-and-run: After a clean break, the Hybrid will usually sit slightly wider than pure Vol, use it to avoid getting shaken on the first retest.
Range compression: When the ATR and Vol distances converge, the table will show small Risk %. That’s your green light to size up with the same dollar risk, or keep it conservative if you expect expansion.
Alerts
Long Stop Loss Hit : Notifies when price crosses below the live long stop.
Short Stop Loss Hit : Notifies when price crosses above the live short stop.
Why this feels “set-and-serious”
You get a single look that answers three questions in real time: “Where’s my line in the sand?”, “How much heat am I taking right now?”, and “Is this distance appropriate for current conditions?” With ATR, Vol, and Hybrid in one tool, you can run the exact same playbook across symbols and regimes while keeping your chart clean and your risk explicit.
Rolling VWAP with Standard Deviation Bands and AlertsA Rolling Volume Weighted Average Price (RVWAP) indicator featuring dynamic standard deviation bands and customizable alerts.
This indicator automatically adapts its calculation period to the chart timeframe while providing precise entry and exit signals through statistical deviation levels.
Automatic time period adjustment based on chart timeframe
Manual time period override option (days, hours, minutes)
Volume-weighted price calculations with variance safeguards
Five Standard Deviation Levels
Individual toggles for 1σ, 1.5σ, 2σ, 2.5σ, and 3σ bands
Color-coded visualization with gradient transparency
Red bands above RVWAP (resistance levels)
Green bands below RVWAP (support levels)
Orange RVWAP centerline
Smart Alert System
Separate BUY and SELL alert conditions
Individual band selection for alerts
Visual Triangle Alerts
Optional triangle markers on band crossings
Size and transparency graded by significance level
Tiny triangles for 1σ/1.5σ (frequent signals)
Normal triangles for 3σ (extreme moves)
Momentum and mean reversion trading
Support and resistance identification
Volatility-based position sizing
Multi-timeframe analysis
PolyFilter [BackQuant]PolyFilter
A flexible, low-lag trend filter with three smoothing engines—optimized for clean bias, fewer whipsaws, and clear alerting.
What it does
PolyFilter draws a single “intelligent” baseline that adapts to price while suppressing noise. You choose the engine— Fractional MA , Ehlers 2-Pole Super Smoother , or a Multi-Kernel blend . The line can color itself by slope (trend) or by position vs price (above/below), and you get four ready-made alerts for flips and crosses.
What it plots
PolyFilter line — your smoothed trend baseline (width set by “Line Width”).
Optional candle & background coloring — choose: color by trend slope or by whether price is above/below the filter.
Signal markers — Arrows with L/S when the slope flips or when price crosses the line (if you enable shapes/alerts).
How the three engines differ
Fractional MA (experimental) — A power-law weighting of past bars (heavier focus on the most recent samples without throwing away history). The Adaptation Speed acts like the “fraction” exponent (default 0.618). Lower values lean more on recent bars; higher values spread weight further back.
Ehlers 2-Pole Super Smoother — Classic low-lag IIR smoother that aggressively reduces high-frequency noise while preserving turns. Great default when you want a steady, responsive baseline with minimal parameter fuss.
Multi-Kernel — A 70/30 blend of a Gaussian window and an exponential kernel. The Gaussian contributes smooth structure; the exponential adds a hint of responsiveness. Useful for assets that oscillate but still trend.
Reading the colors
Trend mode (default) — Line & candles turn green while the filter is rising (signal > signal ) and red while it’s falling.
Above/Below mode — Line & candles reflect price’s position relative to the filter: green when price > filter, red when price < filter. This is handy if you treat the filter like a dynamic “fair value” or bias line.
Inputs you’ll actually use
Calculation Settings
Price Source — Default HLC/3. Switch to Close for stricter trend, or HLC3/HL2 to soften single-print spikes.
Filter Length — Window/period for all engines. Shorter = snappier turns; longer = smoother line.
Adaptation Speed — Only affects Fractional MA . Lower it for faster, more local weighting; raise it for smoother, more global weighting.
Filter Type — Pick one of: Fractional MA, Ehlers 2-Pole, Multi-Kernel.
UI & Plotting
Color based off… — Choose Trend (slope) or > or < Close (position vs price).
Long/Short Colors — Customize bull/bear hues to your theme.
Show Filter Line / Paint candles / Color background — Visual toggles for the line, bars, and backdrop.
Line Width — Make the filter stand out (2–3 works well on most charts).
Signals & Alerts
PolyFilter Trend Up — Slope flips upward (the filter crosses above its prior value). Good for early continuation entries or stop-tightening on shorts.
PolyFilter Trend Down — Slope flips downward. Often used to scale out longs or rotate bias.
PolyFilter Above Price — The filter line crosses up through price (filter > price). This can confirm that mean has “caught up” after a pullback.
PolyFilter Below Price — The filter line crosses down through price (filter < price). Useful to confirm momentum loss on bounces.
Quick starts (suggested presets)
Intraday (5–15m, crypto or indices) — Ehlers 2-Pole, Length 55–80. Trend coloring ON, candle paint ON. Look for pullbacks to a rising filter; avoid fading a falling one.
Swing (1H–4H) — Multi-Kernel, Length 80–120. Background color OFF (cleaner), candle paint ON. Add a higher-TF confirmation (e.g., 4H filter rising when you trade 1H).
Range-prone FX — Fractional MA, Length 70–100, Adaptation ~0.55–0.70. Consider Above/Below mode to trade mean reversion to the line with a strict risk cap.
How to use it in practice
Bias line — Trade in the direction of the filter slope; stand aside when it flattens and color chops back and forth.
Dynamic support/resistance — Treat the line as a moving value area. In trends, entries often appear on shallow tags of the line with structure confluence.
Regime switch — When the filter flips and holds color for several bars, tighten stops on the opposing side and look for first pullback in the new color.
Stacking filters — Many users run PolyFilter on the active chart and a slower instance (longer length) on a higher timeframe as a “macro bias” guardrail.
Tuning tips
If you see too many flips, lengthen the filter or switch to Multi-Kernel.
If turns feel late, shorten the filter or try Ehlers 2-Pole for lower lag.
On thin or very noisy symbols, prefer HLC3 as the source and longer lengths.
Performance note: very large lengths increase computation time for the Multi-Kernel and Fractional engines. Start moderate and scale up only if needed.
Summary
PolyFilter gives you a single, trustworthy baseline that you can read at a glance—either as a pure trend line (slope coloring) or as a dynamic “above/below fair value” reference. Pick the engine that matches your market’s personality, set a sensible length, and let the color and alerts guide bias, entries on pullbacks, and risk on reversals.
Kalman Adjusted Average True Range [BackQuant]Kalman Adjusted Average True Range
A volatility-aware trend baseline that fuses a Kalman price estimate with ATR “rails” to create a smooth, adaptive guide for entries, exits, and trailing risk.
Built on my original Kalman
This indicator is based on my original Kalman Price Filter:
That core smoother is used here to estimate the “true” price path, then blended with ATR to control step size and react proportionally to market noise.
What it plots
Kalman ATR Line the main baseline that turns up/down with the filtered trend.
Optional Moving Average of the Kalman ATR a secondary line for confluence (SMA/Hull/EMA/WMA/DEMA/RMA/LINREG/ALMA).
Candle Coloring (optional) paint bars by the baseline’s current direction.
Why combine Kalman + ATR?
Kalman reduces measurement noise and produces a stable path without the lag of heavy MAs.
ATR rails scale the baseline’s step to current volatility, so it’s calm in chop and more responsive in expansion.
The result is a single, intelligible line you can trade around: slope-up = constructive; slope-down = caution.
How it works (plain English)
Each bar, the Kalman filter updates an internal state (tunable via Process Noise , Measurement Noise , and Filter Order ) to estimate the underlying price.
An ATR band (Period × Factor) defines the allowed per-bar adjustment. The baseline cannot “jump” beyond those rails in one step.
A direction flip is detected when the baseline’s slope changes sign (upturn/downturn), and alerts are provided for both.
Typical uses
Trend confirmation Trade in the baseline’s direction; avoid fading a firmly rising/falling line.
Pullback timing Look for entries when price mean-reverts toward a rising baseline (or exits on tags of a falling one).
Trailing risk Use the baseline as a dynamic guide; many traders set stops a small buffer beyond it (e.g., a fraction of ATR).
Confluence Enable the MA overlay of the Kalman ATR; alignment (baseline above its MA and rising) supports continuation.
Inputs & what they do
Calculation
Kalman Price Source which price the filter tracks (Close by default).
Process Noise how quickly the filter can adapt. Higher = more responsive (but choppier).
Measurement Noise how much you distrust raw price. Higher = smoother (but slower to turn).
Filter Order (N) depth of the internal state array. Higher = slightly steadier behavior.
Kalman ATR
Period ATR lookback. Shorter = snappier; longer = steadier.
Factor scales the allowed step per bar. Larger factors permit faster drift; smaller factors clamp movement.
Confluence (optional)
MA Type & Period compute an MA on the Kalman ATR line , not on price.
Sigma (ALMA) if ALMA is selected, this input controls the curve’s shape. (Ignored for other MA types.)
Visuals
Plot Kalman ATR toggle the main line.
Paint Candles color bars by up/down slope.
Colors choose long/short hues.
Signals & alerts
Trend Up baseline turns upward (slope crosses above 0).
Alert: “Kalman ATR Trend Up”
Trend Down baseline turns downward (slope crosses below 0).
Alert: “Kalman ATR Trend Down”
These are state flips , not “price crossovers,” so you avoid many one-bar head-fakes.
How to start (fast presets)
Swing (daily/4H) ATR Period 7–14, Factor 0.5–0.8, Process Noise 0.02–0.05, Measurement Noise 2–4, N = 3–5.
Intraday (5–15m) ATR Period 5–7, Factor 0.6–1.0, Process Noise 0.05–0.10, Measurement Noise 2–3, N = 3–5.
Slow assets / FX raise Measurement Noise or ATR Period for calmer lines; drop Factor if the baseline feels too jumpy.
Reading the line
Rising & curving upward momentum building; consider long bias until a clear downturn.
Flat & choppy regime uncertainty; many traders stand aside or tighten risk.
Falling & accelerating distribution lower; short bias until a clean upturn.
Practical playbook
Continuation entries After a Trend Up alert, wait for a minor pullback toward the baseline; enter on evidence the line keeps rising.
Exit/reduce If long and the baseline flattens then turns down, trim or exit; reverse logic for shorts.
Filters Add a higher-timeframe check (e.g., only take longs when the daily Kalman ATR is rising).
Stops Place stops just beyond the baseline (e.g., baseline − x% ATR for longs) to avoid “tag & reverse” noise.
Notes
This is a guide to state and momentum, not a guarantee. Combine with your process (structure, volume, time-of-day) for decisions.
Settings are asset/timeframe dependent; start with the presets and nudge Process/Measurement Noise until the baseline “feels right” for your market.
Summary
Kalman ATR takes the noise-reduction of a Kalman price estimate and couples it with volatility-scaled movement to produce a clean, adaptive baseline. If you liked the original Kalman Price Filter (), this is its trend-trading cousin purpose-built for cleaner state flips, intuitive trailing, and confluence with your existing
PE Rating by The Noiseless TraderPE Rating by The Noiseless Trader
This script analyzes a symbol’s Price-to-Earnings (P/E) ratio, using Diluted EPS (TTM) fundamentals directly from TradingView.
The script calculates the Price-to-Earnings ratio (P/E) using Diluted EPS (TTM) fundamentals. It then identifies:
PE High → the highest valuation point over a 3-year historical range.
PE Low → the lowest valuation point over a 3-year historical range.
PE Median → the midpoint between the two extremes, offering a fair-value benchmark.
PE (Int) → an additional intermediate low to track more recent undervaluation points. This is calculated based on lowest valuation point over a 1-year historical range
These levels are plotted directly on the chart as horizontal references, with markers showing the exact bars/dates when the extremes occurred. Candles corresponding to those days are also highlighted for context.
Bars corresponding to these extremes are highlighted (red = PE High, green = PE Low).
How it helps
Provides a historical valuation framework that complements technical analysis. We look for long opportunity or base formation near the PE Low and be cautious when stocks tends to trade near High PE.
We do not short the stock at High PE infact be cautious with long trades.
Helps identify whether current price action is happening near overvalued or undervalued zones.
Adds a long-term perspective to support swing trading and investing decisions. If a stock is coming from Low PE to Median PE and along with that if we get entry based on Classical strategies like Darvas Box, or HH-HL based on Dow Theory.
Offers a simple visual map of how far the market has moved from “cheap” to “expensive.”
This tool is best suited for long-term investors and swing traders who want to merge fundamentals with technical setups.
This indicator is designed as an educational tool to illustrate how valuation metrics (like earnings multiples) can be viewed alongside price action, helping traders connect fundamental context with technical execution in real market conditions.
Quantile Regression Bands [BackQuant]Quantile Regression Bands
Tail-aware trend channeling built from quantiles of real errors, not just standard deviations.
What it does
This indicator fits a simple linear trend over a rolling lookback and then measures how price has actually deviated from that trend during the window. It then places two pairs of bands at user-chosen quantiles of those deviations (inner and outer). Because bands are based on empirical quantiles rather than a symmetric standard deviation, they adapt to skewed and fat-tailed behaviour and often hug price better in trending or asymmetric markets.
Why “quantile” bands instead of Bollinger-style bands?
Bollinger Bands assume a (roughly) symmetric spread around the mean; quantiles don’t—upper and lower bands can sit at different distances if the error distribution is skewed.
Quantiles are robust to outliers; a single shock won’t inflate the bands for many bars.
You can choose tails precisely (e.g., 1%/99% or 5%/95%) to match your risk appetite.
How it works (intuitive)
Center line — a rolling linear regression approximates the local trend.
Residuals — for each bar in the lookback, the indicator looks at the gap between actual price and where the line “expected” price to be.
Quantiles — those gaps are sorted; you select which percentiles become your inner/outer offsets.
Bands — the chosen quantile offsets are added to the current end of the regression line to draw parallel support/resistance rails.
Smoothing — a light EMA can be applied to reduce jitter in the line and bands.
What you see
Center (linear regression) line (optional).
Inner quantile bands (e.g., 25th/75th) with optional translucent fill.
Outer quantile bands (e.g., 1st/99th) with a multi-step gradient to visualise “tail zones.”
Optional bar coloring: bars trend-colored by whether price is rising above or falling below the center line.
Alerts when price crosses the outer bands (upper or lower).
How to read it
Trend & drift — the slope of the center line is your local trend. Persistent closes on the same side of the center line indicate directional drift.
Pullbacks — tags of the inner band often mark routine pullbacks within trend. Reaction back to the center line can be used for continuation entries/partials.
Tails & squeezes — outer-band touches highlight statistically rare excursions for the chosen window. Frequent outer-band activity can signal regime change or volatility expansion.
Asymmetry — if the upper band sits much further from the center than the lower (or vice versa), recent behaviour has been skewed. Trade management can be adjusted accordingly (e.g., wider take-profit upslope than downslope).
A simple trend interpretation can be derived from the bar colouring
Good use-cases
Volatility-aware mean reversion — fade moves into outer bands back toward the center when trend is flat.
Trend participation — buy pullbacks to the inner band above a rising center; flip logic for shorts below a falling center.
Risk framing — set dynamic stops/targets at quantile rails so position sizing respects recent tail behaviour rather than fixed ticks.
Inputs (quick guide)
Source — price input used for the fit (default: close).
Lookback Length — bars in the regression window and residual sample. Longer = smoother, slower bands; shorter = tighter, more reactive.
Inner/Outer Quantiles (τ) — choose your “typical” vs “tail” levels (e.g., 0.25/0.75 inner, 0.01/0.99 outer).
Show toggles — independently toggle center line, inner bands, outer bands, and their fills.
Colors & transparency — customize band and fill appearance; gradient shading highlights the tail zone.
Band Smoothing Length — small EMA on lines to reduce stair-step artefacts without meaningfully changing levels.
Bar Coloring — optional trend tint from the center line’s momentum.
Practical settings
Swing trading — Length 75–150; inner τ = 0.25/0.75, outer τ = 0.05/0.95.
Intraday — Length 50–100 for liquid futures/FX; consider 0.20/0.80 inner and 0.02/0.98 outer in high-vol assets.
Crypto — Because of fat tails, try slightly wider outers (0.01/0.99) and keep smoothing at 2–4 to tame weekend jumps.
Signal ideas
Continuation — in an uptrend, look for pullback into the lower inner band with a close back above the center as a timing cue.
Exhaustion probe — in ranges, first touch of an outer band followed by a rejection candle back inside the inner band often precedes mean-reversion swings.
Regime shift — repeated closes beyond an outer band or a sharp re-tilt in the center line can mark a new trend phase; adjust tactics (stop-following along the opposite inner band).
Alerts included
“Price Crosses Upper Outer Band” — potential overextension or breakout risk.
“Price Crosses Lower Outer Band” — potential capitulation or breakdown risk.
Notes
The fit and quantiles are computed on a fixed rolling window and do not repaint; bands update as the window moves forward.
Quantiles are based on the recent distribution; if conditions change abruptly, expect band widths and skew to adapt over the next few bars.
Parameter choices directly shape behaviour: longer windows favour stability, tighter inner quantiles increase touch frequency, and extreme outer quantiles highlight only the rarest moves.
Final thought
Quantile bands answer a simple question: “How unusual is this move given the current trend and the way price has been missing it lately?” By scoring that question with real, distribution-aware limits rather than one-size-fits-all volatility you get cleaner pullback zones in trends, more honest “extreme” tags in ranges, and a framework for risk that matches the market’s recent personality.
Deadband Hysteresis Supertrend [BackQuant]Deadband Hysteresis Supertrend
A two-stage trend tool that first filters price with a deadband baseline, then runs a Supertrend around that baseline with optional flip hysteresis and ATR-based adverse exits.
What this is
A hybrid of two ideas:
Deadband Hysteresis Baseline that only advances when price pulls far enough from the baseline to matter. This suppresses micro noise and gives you a stable centerline.
Supertrend bands wrapped around that baseline instead of raw price. Flips are further gated by an extra margin so side changes are more deliberate.
The goal is fewer whipsaws in chop and clearer regime identification during trends.
How it works (high level)
Deadband step — compute a per-bar “deadband” size from one of four modes: ATR, Percent of price, Ticks, or Points. If price deviates from the baseline by more than this amount, move the baseline forward by a fraction of the excess. If not, hold the line.
Centered Supertrend — build upper and lower bands around the baseline using ATR and a user factor. Track the usual trailing logic that tightens a band while price moves in its favor.
Flip hysteresis — require price to exceed the active band by an extra flip offset × ATR before switching sides. This adds stickiness at the boundary.
Adverse exit — once a side is taken, trigger an exit if price moves against the entry by K × ATR .
If you would like to check out the filter by itself:
What it plots
DBHF baseline (optional) as a smooth centerline.
DBHF Supertrend as the active trailing band.
Candle coloring by trend side for quick read.
Signal markers 𝕃 and 𝕊 at flips plus ✖ on adverse exits.
Inputs that matter
Price Source — series being filtered. Close is typical. HL2 or HLC3 can be steadier.
Deadband mode — ATR, Percent, Ticks, or Points. This defines the “it’s big enough to matter” zone.
ATR Length / Mult (DBHF) — only used when mode = ATR. Larger values widen the do-nothing zone.
Percent / Ticks / Points — alternatives to ATR; pick what fits your market’s convention.
Enter Mult — scales the deadband you must clear before the baseline moves. Increase to filter more noise.
Response — fraction of the excess applied to baseline movement. Higher responds faster; lower is smoother.
Supertrend ATR Period & Factor — traditional band size controls; higher factor widens and flips less often.
Flip Offset ATR — extra ATR buffer required to flip. Useful in choppy regimes.
Adverse Stop K·ATR — per-trade danger brake that forces an exit if price moves K×ATR against entry.
UI — toggle baseline, supertrend, signals, and bar painting; choose long and short colors.
How to read it
Green regime — candles painted long and the Supertrend running below price. Pullbacks toward the baseline that fail to breach the opposite band often resume higher.
Red regime — candles painted short and the Supertrend running above price. Rallies that cannot reclaim the band may roll over.
Frequent side swaps — reduce sensitivity by increasing Enter Mult, using ATR mode, raising the Supertrend factor, or adding Flip Offset ATR.
Use cases
Bias filter — allow entries only in the direction of the current side. Use your preferred triggers inside that bias.
Trailing logic — treat the active band as a dynamic stop. If the side flips or an adverse K·ATR exit prints, reduce or close exposure.
Regime map — on higher timeframes, the combination baseline + band produces a clean up vs down template for allocation decisions.
Tuning guidance
Fast markets — ATR deadband, modest Enter Mult (0.8–1.2), response 0.2–0.35, Supertrend factor 1.7–2.2, small Flip Offset (0.2–0.5 ATR).
Choppy ranges — widen deadband or raise Enter Mult, lower response, and add more Flip Offset so flips require stronger evidence.
Slow trends — longer ATR periods and higher Supertrend factor to keep you on side longer; use a conservative adverse K.
Included alerts
DBHF ST Long — side flips to long.
DBHF ST Short — side flips to short.
Adverse Exit Long / Short — K·ATR stop triggers against the current side.
Strengths
Deadbanded baseline reduces micro whipsaws before Supertrend logic even begins.
Flip hysteresis adds a second layer of confirmation at the boundary.
Optional adverse ATR stop provides a uniform risk cut across assets and regimes.
Clear visuals and minimal parameters to adjust for symbol behavior.
Putting it together
Think of this tool as two decisions layered into one view. The deadband baseline answers “does this move even count,” then the Supertrend wrapped around that baseline answers “if it counts, which side should I be on and where do I flip.” When both parts agree you tend to stay on the correct side of a trend for longer, and when they disagree you get an early warning that conditions are changing.
When the baseline bends and price cannot reclaim the opposite band , momentum is usually continuing. Pullbacks into the baseline that stall before the far band often resolve in trend.
When the baseline flattens and the bands compress , expect indecision. Use the Flip Offset ATR to avoid reacting to the first feint. Wait for a clean band breach with follow through.
When an adverse K·ATR exit prints while the side has not flipped , treat it as a risk event rather than a full regime change. Many users cut size, re-enter only if the side reasserts, and let the next flip confirm a new trend.
Final thoughts
Deadband Hysteresis Supertrend is best read as a regime lens. The baseline defines your tolerance for noise, the bands define your trailing structure, and the flip offset plus adverse ATR stop define how forgiving or strict you want to be at the boundary. On strong trends it helps you hold through shallow shakeouts. In choppy conditions it encourages patience until price does something meaningful. Start with settings that reflect the cadence of your market, observe how often flips occur, then nudge the deadband and flip offset until the tool spends most of its time describing the move you care about rather than the noise in between.
Theil-Sen Line Filter [BackQuant]Theil-Sen Line Filter
A robust, median-slope baseline that tracks price while resisting outliers. Designed for the chart pane as a clean, adaptive reference line with optional candle coloring and slope-flip alerts.
What this is
A trend filter that estimates the underlying slope of price using a Theil-Sen style median of past slopes, then advances a baseline by a controlled fraction of that slope each bar. The result is a smooth line that reacts to real directional change while staying calm through noise, gaps, and single-bar shocks.
Why Theil-Sen
Classical moving averages are sensitive to outliers and shape changes. Ordinary least squares is sensitive to large residuals. The Theil-Sen idea replaces a single fragile estimate with the median of many simple slopes, which is statistically robust and less influenced by a few extreme bars. That makes the baseline steadier in choppy conditions and cleaner around regime turns.
What it plots
Filtered baseline that advances by a fraction of the robust slope each bar.
Optional candle coloring by baseline slope sign for quick trend read.
Alerts when the baseline slope turns up or down.
How it behaves (high level)
Looks back over a fixed window and forms many “current vs past” bar-to-bar slopes.
Takes the median of those slopes to get a robust estimate for the bar.
Optionally caps the magnitude of that per-bar slope so a single volatile bar cannot yank the line.
Moves the baseline forward by a user-controlled fraction of the estimated slope. Lower fractions are smoother. Higher fractions are more responsive.
Inputs and what they do
Price Source — the series the filter tracks. Typical is close; HL2 or HLC3 can be smoother.
Window Length — how many bars to consider for slopes. Larger windows are steadier and slower. Smaller windows are quicker and noisier.
Response — fraction of the estimated slope applied each bar. 1.00 follows the robust slope closely; values below 1.00 dampen moves.
Slope Cap Mode — optional guardrail on each bar’s slope:
None — no cap.
ATR — cap scales with recent true range.
Percent — cap scales with price level.
Points — fixed absolute cap in price points.
ATR Length / Mult, Cap Percent, Cap Points — tune the chosen cap mode’s size.
UI Settings — show or hide the line, paint candles by slope, choose long and short colors.
How to read it
Up-slope baseline and green candles indicate a rising robust trend. Pullbacks that do not flip the slope often resolve in trend direction.
Down-slope baseline and red candles indicate a falling robust trend. Bounces against the slope are lower-probability until proven otherwise.
Flat or frequent flips suggest a range. Increase window length or decrease response if you want fewer whipsaws in sideways markets.
Use cases
Bias filter — only take longs when slope is up, shorts when slope is down. It is a simple way to gate faster setups.
Stop or trail reference — use the line as a trailing guide. If price closes beyond the line and the slope flips, consider reducing exposure.
Regime detector — widen the window on higher timeframes to define major up vs down regimes for asset rotation or risk toggles.
Noise control — enable a cap mode in very volatile symbols to retain the line’s continuity through event bars.
Tuning guidance
Quick swing trading — shorter window, higher response, optionally add a percent cap to keep it stable on large moves.
Position trading — longer window, moderate response. ATR cap tends to scale well across cycles.
Low-liquidity or gappy charts — prefer longer window and a points or ATR cap. That reduces jumpiness around discontinuities.
Alerts included
Theil-Sen Up Slope — baseline’s one-bar change crosses above zero.
Theil-Sen Down Slope — baseline’s one-bar change crosses below zero.
Strengths
Robust to outliers through median-based slope estimation.
Continuously advances with price rather than re-anchoring, which reduces lag at turns.
User-selectable slope caps to tame shock bars without over-smoothing everything.
Minimal visuals with optional candle painting for fast regime recognition.
Notes
This is a filter, not a trading system. It does not account for execution, spreads, or gaps. Pair it with entry logic, risk management, and higher-timeframe context if you plan to use it for decisions.
Simple TPODisplays price distribution over time using Time Price Opportunities (TPO). Shows Point of Control (POC), Value Area High/Low (VAH/VAL) levels to identify key support/resistance zones and fair value areas. Includes customizable timeframes and price breakout alerts.
Deadband Hysteresis Filter [BackQuant]Deadband Hysteresis Filter
What this is
This tool builds a “debounced” price baseline that ignores small fluctuations and only reacts when price meaningfully departs from its recent path. It uses a deadband to define how much deviation matters and a hysteresis scheme to avoid rapid flip-flops around the decision boundary. The baseline’s slope provides a simple trend cue, used to color candles and to trigger up and down alerts.
Why deadband and hysteresis help
They filter micro noise so the baseline does not react to every tiny tick.
They stabilize state changes. Hysteresis means the rule to start moving is stricter than the rule to keep holding, which reduces whipsaw.
They produce a stepped, readable path that advances during sustained moves and stays flat during chop.
How it works (conceptual)
At each bar the script maintains a running baseline dbhf and compares it to the input price p .
Compute a base threshold baseTau using the selected mode (ATR, Percent, Ticks, or Points).
Build an enter band tauEnter = baseTau × Enter Mult and an exit band tauExit = baseTau × Exit Mult where typically Exit Mult < Enter Mult .
Let diff = p − dbhf .
If diff > +tauEnter , raise the baseline by response × (diff − tauEnter) .
If diff < −tauEnter , lower the baseline by response × (diff + tauEnter) .
Otherwise, hold the prior value.
Trend state is derived from slope: dbhf > dbhf → up trend, dbhf < dbhf → down trend.
Inputs and what they control
Threshold mode
ATR — baseTau = ATR(atrLen) × atrMult . Adapts to volatility. Useful when regimes change.
Percent — baseTau = |price| × pctThresh% . Scale-free across symbols of different prices.
Ticks — baseTau = syminfo.mintick × tickThresh . Good for futures where tick size matters.
Points — baseTau = ptsThresh . Fixed distance in price units.
Band multipliers and response
Enter Mult — outer band. Price must travel at least this far from the baseline before an update occurs. Larger values reject more noise but increase lag.
Exit Mult — inner band for hysteresis. Keep this smaller than Enter Mult to create a hold zone that resists small re-entries.
Response — step size when outside the enter band. Higher response tracks faster; lower response is smoother.
UI settings
Show Filtered Price — plots the baseline on price.
Paint candles — colors bars by the filtered slope using your long/short colors.
How it can be used
Trend qualifier — take entries only in the direction of the baseline slope and skip trades against it.
Debounced crossovers — use the baseline as a stabilized surrogate for price in moving-average or channel crossover rules.
Trailing logic — trail stops a small distance beyond the baseline so small pullbacks do not eject the trade.
Session aware filtering — widen Enter Mult or switch to ATR mode for volatile sessions; tighten in quiet sessions.
Parameter interactions and tuning
Enter Mult vs Response — both govern sensitivity. If you see too many flips, increase Enter Mult or reduce Response. If turns feel late, do the opposite.
Exit Mult — widening the gap between Enter and Exit expands the hold zone and reduces oscillation around the threshold.
Mode choice — ATR adapts automatically; Percent keeps behavior consistent across instruments; Ticks or Points are useful when you think in fixed increments.
Timeframe coupling — on higher timeframes you can often lower Enter Mult or raise Response because raw noise is already reduced.
Concrete starter recipes
General purpose — ATR mode, atrLen=14 , atrMult=1.0–1.5 , Enter=1.0 , Exit=0.5 , Response=0.20 . Balanced noise rejection and lag.
Choppy range filter — ATR mode, increase atrMult to 2.0, keep Response≈0.15 . Stronger suppression of micro-moves.
Fast intraday — Percent mode, pctThresh=0.1–0.3 , Enter=1.0 , Exit=0.4–0.6 , Response=0.30–0.40 . Quicker turns for scalping.
Futures ticks — Ticks mode, set tickThresh to a few spreads beyond typical noise; start with Enter=1.0 , Exit=0.5 , Response=0.25 .
Strengths
Clear, explainable logic with an explicit noise budget.
Multiple threshold modes so the same tool fits equities, futures, and crypto.
Built-in hysteresis that reduces flip-flop near the boundary.
Slope-based coloring and alerts that make state changes obvious in real time.
Limitations and notes
All filters add lag. Larger thresholds and smaller response trade faster reaction for fewer false turns.
Fixed Points or Ticks can under- or over-filter when volatility regime shifts. ATR adapts, but will also expand bands during spikes.
On extremely choppy symbols, even a well tuned band will step frequently. Widen Enter Mult or reduce Response if needed.
This is a chart study. It does not include commissions, slippage, funding, or gap risks.
Alerts
DBHF Up Slope — baseline turns from down to up on the latest bar.
DBHF Down Slope — baseline turns from up to down on the latest bar.
Implementation details worth knowing
Initialization sets the baseline to the first observed price to avoid a cold-start jump.
Slope is evaluated bar-to-bar. The up and down alerts check for a change of slope rather than raw price crossings.
Candle colors and the baseline plot share the same long/short palette with transparency applied to the line.
Practical workflow
Pick a mode that matches how you think about distance. ATR for volatility aware, Percent for scale-free, Ticks or Points for fixed increments.
Tune Enter Mult until the number of flips feels appropriate for your timeframe.
Set Exit Mult clearly below Enter Mult to create a real hold zone.
Adjust Response last to control “how fast” the baseline chases price once it decides to move.
Final thoughts
Deadband plus hysteresis gives you a principled way to “only care when it matters.” With a sensible threshold and response, the filter yields a stable, low-chop trend cue you can use directly for bias or plug into your own entries, exits, and risk rules.
RB — Rejection Blocks (Price Structure)This indicator detects and visualizes Rejection Blocks (RBs) using pure price action logic.
A bullish RB occurs when a down candle forms a lower low than both its neighbors. A bearish RB occurs when an up candle forms a higher high than both its neighbors.
Validated RBs are displayed as boxes, optional lines, or labels. Blocks are automatically removed when invalidated (price closes through them), keeping the chart uncluttered and focused.
How to use
• Apply on any timeframe, from intraday to higher timeframes.
• Watch how price reacts when revisiting RB zones.
• Treat these zones as contextual areas, not entry signals.
• Combine with your own trading methods for confirmation.
Originality
Unlike generic support/resistance tools, this indicator isolates a specific structural pattern (rejection blocks) and renders it visually on the chart. This selective focus allows traders to study structural reactions with more clarity and precision.
⚠️ Disclaimer: This is not a trading system or a signal provider. It is a visual analysis tool designed for structural and educational purposes.
Smart Structure Breaks & Order BlocksOverview (What it does)
The indicator “Smart Structure Breaks & Order Blocks” detects market structure using swing highs and lows, identifies Break of Structure (BOS) events, and automatically draws order blocks (OBs) from the origin candle. These zones extend to the right and change color/outline when mitigated or invalidated. By formalizing and automating part of discretionary analysis, it provides consistent zone recognition.
Main Components
Swing Detection: ta.pivothigh/ta.pivotlow identify confirmed swing points.
BOS Detection: Determines if the recent swing high/low is broken by close (strict mode) or crossover.
OB Creation: After a BOS, the opposite candle (bearish for bullish BOS, bullish for bearish BOS) is used to generate an order block zone.
Zone Management: Limits the number of zones, extends them to the right, and tracks tagged (mitigated) or invalidated states.
Input Parameters
Left/Right Pivot (default 6/6): Number of bars required on each side to confirm a swing. Higher values = smoother swings.
Max Zones (default 4): Maximum zones stored per direction (bull/bear). Oldest zones are overwritten.
Zone Confirmation Lookback (default 3): Ensures OB origin candle validity by checking recent highs/lows.
Show Swing Points (default ON): Displays triangles on swing highs/lows.
Require close for BOS? (default ON): Strict BOS (close required) vs loose BOS (line crossover).
Use candle body for zones (default OFF): Zones drawn from candle body (ON) or wick (OFF).
Signal Definition & Logic
Swing Updates: Latest confirmed pivots update lastHighLevel / lastLowLevel.
BOS (Break of Structure):
Bullish – close breaks last swing high.
Bearish – close breaks last swing low.
Only one valid BOS per swing (avoids duplicates).
OB Detection:
Bullish BOS → previous bearish candle with lowest low forms the OB.
Bearish BOS → previous bullish candle with highest high forms the OB.
Zones: Bull = green, Bear = red, semi-transparent, extended to the right.
Zone States:
Mitigated: Price touches the zone → border highlighted.
Invalidated:
Bull zone → close below → turns red.
Bear zone → close above → turns green.
Chart Appearance
Swing High: red triangle above bar
Swing Low: green triangle below bar
Bull OB: green zone (border highlighted on touch)
Bear OB: red zone (border highlighted on touch)
Invalid Zones: Bull zones turn reddish, Bear zones turn greenish
Practical Use (Trading Assistance)
Trend Following Entries: Buy pullbacks into green OBs in uptrends, sell rallies into red OBs in downtrends.
Focus on First Touch: First mitigation after BOS often has higher reaction probability.
Confluence: Combine with higher timeframe trend, volume, session levels, key price levels (previous highs/lows, VWAP, etc.).
Stops/Targets:
Bull – stop below zone, partial take profit at swing high or resistance.
Bear – stop above zone, partial take profit at swing low or support.
Parameter Tuning (per market/timeframe)
Pivot (6/6 → 4/4/8/8): Lower for scalping (3–5), medium for day trading (5–8), higher for swing trading (8–14). Increase to reduce noise.
Strict Break: ON to reduce false breaks in ranging markets; OFF for earlier signals.
Body Zones: ON for assets with long wicks, OFF for cleaner OBs in liquid instruments.
Zone Confirmation (default 3): Increase for stricter OB origin, fewer zones.
Max Zones (default 4 → 6–10): Increase for higher volatility, decrease to avoid clutter.
Strengths
Standardizes BOS and OB detection that is usually subjective.
Tracks mitigation and invalidation automatically.
Adaptable: allows body/wick zone switching for different instruments.
Limitations
Pivot-based: Signals appear only after pivots confirm (slight lag).
Zones reflect past balance: Can fail after new events (news, earnings, macro data).
Range-heavy markets: More false BOS; consider stricter settings.
Backtesting: This script is for drawing/visual aid; trading rules must be defined separately.
Workflow Example
Identify higher timeframe trend (4H/Daily).
On lower TF (15–60m), wait for BOS and new OB.
Enter on first mitigation with confirmation candle.
Stop beyond zone; targets based on R multiples and swing points.
FAQ
Q: Why are zones invalidated quickly?
A: Flow reversal after BOS. Adjust pivots higher, enable Strict mode, or switch to Body zones to reduce noise.
Q: What does “tagged” mean?
A: Price touched the zone once = mitigated. Implies some orders in that zone may have been filled.
Q: Body or Wick zones?
A: Wick zones are fine in clean markets. For volatile pairs with long wicks, body zones provide more realistic areas.
Customization Tips (Code perspective)
Zone storage: Currently ring buffer ((idx+1) % zoneLimit). Could prioritize keeping unmitigated zones.
Automated testing: Add strategy.entry/exit for rule-based backtests.
Multi-timeframe: Use request.security() for higher timeframe swings/BOS.
Visualization: Add labels for BOS bars, tag zones with IDs, count touches.
Summary
This indicator formalizes the cycle Swing → BOS → OB creation → Mitigation/Invalidation, providing consistent structure analysis and zone tracking. By tuning sensitivity and strictness, and combining with higher timeframe context, it enhances pullback/continuation trading setups. Always combine with proper risk management.
Moving Average Adaptive RSI [BackQuant]Moving Average Adaptive RSI
What this is
A momentum oscillator that reshapes classic RSI into a zero-centered column plot and makes it adaptive. It builds RSI from two parts:
• A sensitivity window that scans several recent bars to capture the strongest up and down impulses.
• A selectable moving average that smooths those impulses before computing RSI.
The output ranges roughly from −100 to +100 with 0 as the midline, with optional extra smoothing and built-in divergence detection.
How it works
Impulse extraction
• For each bar the script inspects the last rsi_sen bars and collects upward and downward price changes versus the current price.
• It keeps the maximum upward change and maximum downward change from that window, emphasizing true bursts over single-bar noise.
MA-based averaging
• The up and down impulse series are averaged with your chosen MA over rsi_len bars.
• Supported MA types: SMA, EMA, DEMA, WMA, HMA, SMMA (RMA), TEMA.
Zero-centered RSI transform
• RS = UpMA ÷ DownMA, then mapped to a symmetric scale: 100 − 200 ÷ (1 + RS) .
• Above 0 implies positive momentum bias. Below 0 implies negative momentum bias.
Optional extra smoothing
• A second smoothing pass can be applied to the final oscillator using smoothing_len and smooth_type . Toggle with “Use Extra Smoothing”.
Visual encoding
• The oscillator is drawn as columns around the zero line with a gradient that intensifies toward extremes.
• Static bands mark 80 to 100 and −80 to −100 for extreme conditions.
Key inputs and what they change
• Price Source : input series for momentum.
• Calculation Period (rsi_len) : primary averaging window on up and down components. Higher = smoother, slower.
• Sensitivity (rsi_sen) : how many recent bars are scanned to find max impulses. Higher = more responsive to bursts.
• Calculation Type (ma_type) : MA family that shapes the core behavior. HMA or DEMA is faster, SMA or SMMA is slower.
• Smoothing Type and Length : optional second pass to calm noise on the final output.
• UI toggles : show or hide the oscillator, candle painting, and extreme bands.
Reading the oscillator
• Midline cross up (0) : momentum bias turning positive.
• Midline cross down (0) : momentum bias turning negative.
• Positive territory :
– 0 to 40: constructive but not stretched.
– 40 to 80: strong momentum, continuation more likely.
– Above 80: extreme risk of mean reversion grows.
• Negative territory : mirror the same levels for the downside.
Divergence detection
The script plots four divergence types using pivot highs and lows on both price and the oscillator. Lookbacks are set by lbL and lbR .
• Regular bullish : price lower low, oscillator higher low. Possible downside exhaustion.
• Hidden bullish : price higher low, oscillator lower low. Bias to trend continuation up.
• Regular bearish : price higher high, oscillator lower high. Possible upside exhaustion.
• Hidden bearish : price lower high, oscillator higher high. Bias to trend continuation down.
Labels: ℝ for regular, ℍ for hidden. Green for bullish, red for bearish.
Candle coloring
• Optional bar painting: green when the oscillator is above 0, red when below 0. This is for visual scanning only.
Strengths
• Adaptive sensitivity via a rolling impulse window that responds to genuine bursts.
• Configurable MA core so you can match responsiveness to the instrument.
• Zero-centered scale for simple regime reads with 0 as a clear bias line.
• Built-in regular and hidden divergence mapping.
• Flexible across symbols and timeframes once tuned.
Limitations and cautions
• Trends can remain extended. Treat extremes as context rather than automatic reversal signals.
• Divergence quality depends on pivot lookbacks. Short lookbacks give more signals with more noise. Long lookbacks reduce noise but add lag.
• Double smoothing can delay zero-line transitions. Balance smoothness and timeliness.
Practical usage ideas
• Regime filter : only take long setups from your separate method when the oscillator is above 0, shorts when below 0.
• Pullback confirmation : in uptrends, look for dips that hold above 0 or turn up from 0 to 40. Reverse for downtrends.
• Divergence as a heads-up : wait for a zero-line cross or a price trigger before acting on divergence.
• Sensitivity tuning : start with rsi_sen 2 to 5 on faster timeframes, increase slightly on slower charts.
Alerts
• MA-A RSI Long : oscillator crosses above 0.
• MA-A RSI Short : oscillator crosses below 0.
Use these as bias or timing aids, not standalone trade commands.
Settings quick reference
• Calculation : Price Source, Calculation Type, Calculation Period, Sensitivity.
• Smoothing : Smoothing Type, Smoothing Length, Use Extra Smoothing.
• UI : Show Oscillator, Paint Candles, Show Static High and Low Levels.
• Divergences : Pivot Lookback Left and Right, Div Signal Length, Show Detected Divergences.
Final thoughts
This tool reframes RSI by extracting strong short-term impulses and averaging them with a moving-average model of your choice, then presenting a zero-centered output for clear regime reads. Pair it with your structure, risk and execution process, and tune sensitivity and smoothing to the market you trade.
Forward P/E CalculatorI could not find a forward P/E indicator that gave me proper results. So here is mine.